﻿//////////////////////////////////////////////////////////////////////////////
//
//  Copyright © 1998-2024 Glodon Company Limited.  All rights reserved.
//
//  Use of this software is subject to the terms of the Glodon license
//  agreement provided at the time of installation or download, or which
//  otherwise accompanies this software in either electronic or hard copy form.  
//
//////////////////////////////////////////////////////////////////////////////


#pragma once

#include "GcmpRenderingInterface.h"

#include <ElementId.h>

namespace gcmp
{
    class ICanvas;
    class IDocument;
    class IModelView;

    /// \brief 渲染上下文
    ///
    /// \param canvas 渲染使用到的画布指针
    /// \param dbDocument 渲染使用到的文档指针
    /// \param modelView 渲染使用到的视图指针
    /// \param modelViewId 渲染使用到的视图Id
    class GCMP_RENDERING_INTERFACE_EXPORT RenderContext
    {
    public:
        RenderContext();

        ICanvas* canvas;
        IDocument* dbDocument;
        IModelView* modelView;
        ElementId modelViewId;
    };
}

